package com.example.csmall.product.ex;

import com.example.csmall.product.web.ServiceCode;
import lombok.Getter;

public class ServiceException extends RuntimeException{

    /**
     * 此属性作为 ServiceException被抛出时的"状态"
     * 作用：可以通过这个属性来确定具体向客户端返回的错误状态
     * 当多个方法同时抛出此异常，作为错误信息时，设置此属性就可以分辨出这次抛出此异常具体代表着什么错误
     */
    @Getter
    private ServiceCode serviceCode;

    /**
     * 当前此自定义异常类在被创建时，必须传递状态码和错误的描述信息。
     * @param serviceCode
     * @param message
     */
    public ServiceException(ServiceCode serviceCode,String message) {
        super(message);
        this.serviceCode = serviceCode;
    }

}
